lib.use(['element', 'form','formSelects'], function () {
    var form = layui.form;
    var $ = layui.jquery;
    var updateForm = layui.Form('formForm');
    var formSelects = layui.formSelects;
    var navHide=common.util.getParam('navHide')=="true";
    var deptId=common.util.getParam("pid");
    var tenantId=common.util.getParam('tenantId')||common.util.getUserTenantId();
    var roleIdList=[];
    var reqUrl;
    form.verify({
            userName: function(value, item){ //value：表单的值、item：表单的DOM对象
                if(!new RegExp("^[a-zA-Z0-9_\u4e00-\u9fa5\\s·]+$").test(value)){
                    return '用户名不能有特殊字符';
                }
                if(/(^\_)|(\__)|(\_+$)/.test(value)){
                    return '用户名首尾不能出现下划线\'_\'';
                }
                if(/^\d+\d+\d$/.test(value)){
                    return '用户名不能全为数字';
                }
            }
            ,comfirmPass: function(value, item){
                if(value!=$("#passWord").val()){
                    return '两次密码输入不一致\'_\'';
                }
            }
            ,pass: function (value, item) {

                if(value!=""&&!new RegExp("^[\\S]{6,12}$").test(value)){
                        return '密码必须6到12位，且不能出现空格';
                }else{
                    if(!common.util.getParam('id')&&!new RegExp("^[\\S]{6,12}$").test(value)){
                        return '密码必须6到12位，且不能出现空格';
                    }
                }
            }
    });
    formSelects.config('roleIdList', {
        keyName: 'roleName',            //自定义返回数据中name的key, 默认 name
        keyVal: 'id',            //自定义返回数据中value的key, 默认 value
        beforeSuccess: function(id, url, searchVal, result){
           $.each(roleIdList,function () {
               var than=this;
               $.each(result.data,function () {
                   if(than==this.id){
                       this.selected="selected";
                   }
               })
           })
            console.log(result)
            return result;  //必须return一个结果, 这个结果要符合对应的数据结构
        }
    });




    form.on('submit(formSubmitFilter)', function (data) {
        var param = updateForm.getData();
        param.roleIdList=formSelects.value('roleIdList','val');
        common.ajax.post(reqUrl, param, function (resp) {
            common.util.alert('操作成功', function () {
                common.util.returnWindow('userList.html?navHide='+navHide+'&tenantId='+tenantId)
            })
        })
        return false;
    });
    $(document).on('click','#return',function(){
        location.href = 'userList.html?navHide='+navHide+'&tenantId='+tenantId;
    });
    function loadFormData() {
        var id = common.util.getParam('id');
        common.ajax.get('/sys/user/info/'+id, {}, function (resp) {
            resp.data.passWord=''
            resp.data.comfirmPassword=''
            updateForm.setData(resp.data);
            roleIdList=resp.data.roleIdList;
            initRole();

        });
    }
    (function () {
        initPage(common.util.getParam('id'));
    })();

    function initRole(){
        formSelects.data('roleIdList', 'server', {
            url: common.util.createUrl('/sys/role/select/'+tenantId),
            linkageWidth: 130//代表每一级别的宽度,默认是100
        });
    }

    /**
     * 页面初始化页面
     */
    function initPage(id){
        if(navHide)$(".x-nav").hide();
        $(".nav-text").text(common.util.getParam('id')?"修改用户":"新增用户");
        if(id){
            //修改
            loadFormData();
            reqUrl="/sys/user/update";
            $("#formForm").find('input[name=passWord]').attr("placeholder",'为空则表示使用原密码');
            $("#formForm").find('input[name=comfirmPassword]').attr("placeholder",'为空则表示使用原密码')
        }else{
            //新增
            reqUrl="/sys/user/save";
            updateForm.setData({userStatus:1,tenantId:tenantId,deptId:deptId});
            initRole();
        }
    }
});
